package com.abvnet.project.water.sewage.service;

import com.abvnet.project.water.sewage.domain.SewagePlan;
import com.abvnet.project.water.sewage.domain.SewagePlanMicrobial;
import com.abvnet.project.water.sewage.domain.SewagePlanProject;

import java.util.List;

/**
 * 解决方案 服务层
 * 
 * @author duj
 * @date 2019-07-30
 */
public interface ISewagePlanService {
	/**
     * 查询解决方案信息
     * 
     * @param planId 解决方案ID
     * @return 解决方案信息
     */
	public SewagePlan selectSewagePlanById(Long planId);
	
	/**
     * 查询解决方案列表
     * 
     * @param sewagePlan 解决方案信息
     * @return 解决方案集合
     */
	public List<SewagePlan> selectSewagePlanList(SewagePlan sewagePlan);

    List<SewagePlan> selectSewagePlanListForApi(SewagePlan sewagePlan);

    SewagePlan selectSewagePlanForApi(Long planId);

	int cancelAssignMicro(SewagePlanMicrobial sewagePlanMicrobial);

    int cancelAssignMicroAll(Long planId, String microbialIds);

    int insertAssingMicros(Long planId, String microbialIds);

    int cancelAssignProject(SewagePlanProject sewagePlanProject);

    int cancelAssignProjectAll(Long planId, String projectIds);

    int insertAssingProjects(Long planId, String projectIds);
	
	/**
     * 新增解决方案
     * 
     * @param sewagePlan 解决方案信息
     * @return 结果
     */
	public int insertSewagePlan(SewagePlan sewagePlan);
	
	/**
     * 修改解决方案
     * 
     * @param sewagePlan 解决方案信息
     * @return 结果
     */
	public int updateSewagePlan(SewagePlan sewagePlan);
		
	/**
     * 删除解决方案信息
     * 
     * @param ids 需要删除的数据ID
     * @return 结果
     */
	public int deleteSewagePlanByIds(String ids);
}
